package com.java2007.zhangyu.restaurant.service;

import com.java2007.zhangyu.restaurant.pojo.DinnerTable;

import java.sql.SQLException;
import java.util.List;

/**
 * @author zy
 * @Version
 * @date 2021/01/28
 */
public interface TableService {
    /**
     * 根据餐桌名增加餐桌
     * @param dinnerTable
     * @return 若返回-1表示增加信息失败，若返回1表示增加信息成功
     * @throws SQLException
     */
    int saveTable(DinnerTable dinnerTable) throws SQLException;

    /**
     * 根据餐桌 id删除餐桌信息
     * @param dtId 餐桌 id
     * @return 若返回-1表示删除信息失败，若返回1表示删除信息成功
     * @throws Exception
     */
    int deleteByTableId(Integer dtId) throws Exception;

    /**
     * 修改餐桌状态
     * @param table
     * @return
     * @throws SQLException
     */
    int update(DinnerTable table) throws SQLException;

    /**
     * 根据餐桌 id查询
     * @param dtId 餐桌 id
     * @return
     * @throws SQLException
     */
    DinnerTable queryByTableId(Integer dtId) throws SQLException;

    /**
     * 根据餐桌名模糊查询餐桌信息
     * @param dtName 餐桌名
     * @return
     * @throws SQLException
     */
    List<DinnerTable> queryTableName(String dtName) throws SQLException;

    /**
     * 查询餐桌状态
     * @param dtState
     * @return
     * @throws Exception
     */
    List<DinnerTable> queryByStatus(Integer dtState) throws Exception;

    /**
     * 查询所有餐桌信息
     * @return
     * @throws Exception
     */
    List<DinnerTable> queryAll() throws Exception;

    /**
     * 根据餐桌名校验名字是否重复
     * @param dtName
     * @return
     * @throws Exception
     */
    int checkTableName(String dtName) throws Exception;
}
